﻿///// BEGIN REGION DE CONTANTES
var K_PERFIL_GEOLOGO = "GEOLOGO";
var K_PERFIL_GEOMECANICO = "GEOMECANICO";
var K_MSG_PERMISO="Ud No tiene acceso a esta opción.";
var K_TIME_OUT_SESSION = "La sesion ha Expirado. Inicie sesion nuevamente";
var K_ERROR_CUSTOM=999; 

///// END REGION DE CONTANTES


    $(document).ready(function () {
         
 
     $(".actionsheet-trigager").kendoButton();
          
     

     //carga de combos Nuevo Registro
             $("#producto").kendoDropDownList({
                            
                            dataTextField: "Text",
                            dataValueField: "Value",
                            dataSource: dsTomadorMuestraList
                            });
                             


       $("#ddlTomadorMuestra").kendoDropDownList({
                            placeholder: "TomadorMuestra",
                            dataTextField: "Text",
                            dataValueField: "Value",
                            dataSource: dsTomadorMuestraList
                            });
                             

      $("#ddlTipoControlCalidad").kendoDropDownList({
                                placeholder: "Tipo Control Calidad",
                                dataTextField: "Text",
                                dataValueField: "Value",
                                dataSource:  dsTipoControlCalidadList,
                                change: onChange
                            });


       
       $("#txtFechaEnvio").kendoDatePicker({
                    value: new Date(),
                    min: new Date(1950, 0, 1),
                    max: new Date(2049, 11, 31),
                    culture: "en-AU",
                    format: "dd/MM/yyyy",
                    parseFormats: ["dd/MM/yyyy"]
                });
       
     
      $("#txtCodigo").kendoMaskedTextBox({
                       mask: "00000000D"
                        });
     $("#txtGeologo").kendoMaskedTextBox({
                       mask: ""
                        });
      $("#modalview-login-button").kendoButton();
      $("#cancelarButton").kendoButton();
       $("#txtDesde").kendoNumericTextBox({
                            decimals: 2,
                            value:0
                        });

       $("#txtHasta").kendoNumericTextBox({
                            decimals: 2,
                            value:0
                        });
      $("#txtDuplicado").kendoMaskedTextBox({
                       mask: ""
                        });

   
        obtienePerfUsuLogin();  //carga perfil logeado
        obtieneUsuarioLogin();  //carga usuario logeado
        validateMenu();
       //cargargrilla
       loadData();
       //nombre ddh
       obtenerSondaje();



        });

        $(function() {
      
        $("#actions").kendoMobileActionSheet({ type: "tablet" });

        $("#grid").on("click", "tr", function() { $("#actions").data("kendoMobileActionSheet").open(this);      });
        ///boton nuevo

        validateMenu();

        $('.k-grid-Nuevo').click(function() { 
             //obtieneUsuarioLogin();
             limpiar();
             $("#mvNuevoMuestra").kendoMobileModalView("open");   
        });

         
    });



    var dsTipoControlCalidadList = new kendo.data.DataSource({
        type: "json",
        transport: {
            read: { url: "TipoControlCalidad/ListItem",
                dataType: "json"
            }
        },
        schema: { type: "json",
            model: {
                fields: {
                    "Text": {   type: "string" },
                    "Value": {  type: "string" }
                }
            }
        },
    });
    

      var dsTomadorMuestraList = new kendo.data.DataSource({
        type: "json",
        transport: {
            read: { url: "TomadorMuestra/ListItem",
                dataType: "json"
            }
        },
        schema: { type: "json",
            model: {
                fields: {
                    "Text": {   type: "string" },
                    "Value": {  type: "string" }
                }
            }
        },
    });


    function onChange() {
                        var value = $("#ddlTipoControlCalidad").val();
                        var maskedtextbox = $("#txtDuplicado").data("kendoMaskedTextBox");
                        if (value == 2)
                        {
                           maskedtextbox.enable(true);
                        }
                        else{
                           maskedtextbox.enable(false);
                        }

                    };
   
    function add(e) {
        limpiar();
        $("#mvNuevoMuestra").kendoMobileModalView("open");
               
    }


   function edit(e) {
      limpiar();
      var codigoSel=getIdGrilla(e);
      if($.trim(codigoSel)!=""){
                    $.ajax({
                      data:{id:codigoSel},
                      url:'Muestra1/Edit',
                      type:'get',
                      beforeSend:function(){},
                      success:function(response){
                       var dato=response;

                      if(dato.result==1){
           
                        var muestra=dato.data.Data;
                          $("#txtCodigoEdit").kendoMaskedTextBox({
                                        value: muestra.CodigoMuestraSondaje,
                                        enable:false
                                    });
                          $("#txtDesdeEdit").kendoNumericTextBox({
                                        decimals: 2,
                                        value:muestra.Desde
                                    });              
                          $("#txtHastaEdit").kendoNumericTextBox({
                                        decimals: 2,
                                        value:muestra.Hasta
                                    });
                          var geo=muestra.Geologo;
                                        if(geo!=null){
                                            $("#txtGeologoEdit").val(geo.NombreGeolgo + " " + geo.ApellidoPaterno + " " + geo.ApellidoMaterno);
                                        }else{
                                            $("#txtGeologoEdit").val("-");
                                        }             
                          $("#ddlTomadorMuestraEdit").kendoComboBox({
                                        placeholder: "TomadorMuestra",
                                        dataTextField: "Text",
                                        dataValueField: "Value",
                                        dataSource: dsTomadorMuestraList,
                                        value:muestra.CodigoTomadorMuestra
                                        });
                          $("#ddlTipoControlCalidadEdit").kendoComboBox({
                                            placeholder: "Tipo Control Calidad",
                                            dataTextField: "Text",
                                            dataValueField: "Value",
                                            dataSource:  dsTipoControlCalidadList,
                                            value:muestra.CodigoTipoControlCalidad
                                        });
                          $("#txtFechaEnvioEdit").kendoDatePicker({
                                                min: new Date(1998, 0, 1),
                                                max: new Date(2025, 11, 31),
                                                culture: "en-AU",
                                                format: "dd/MM/yyyy",
                                                parseFormats: ["dd/MM/yyyy"],
                                                value:muestra.FechaEnvio,
                                                enable:false
                                            });
                          $("#txtObservacionEdit").val(muestra.Observacion);
                          $("#txtDuplicadoEdit").val(muestra.CodigoMuestraSondajeDuplicado);
                          $("#mvEditarMuestra").kendoMobileModalView("open");
                          }else
                          {
                            alert("ocurrió un error"+dato.message);
                          }
              

                      }
                });
           }else{
            alert("No se puede Obtener el codigo de muestra seleccionado.");
           }
    }


    function rename(e) {
        $("#action-result").html("Action clicked: Rename");
    }


    function del(e) {
            var codigoSel=getIdGrilla(e);
            if($.trim(codigoSel)!=""){
                if(confirm("Esta seguro de eliminar este registro?")){
     
                    $.ajax({
                      data:{id:codigoSel},
                      url:'Muestra1/Delete',
                      type:'POST',
                      beforeSend:function(){},
                      success:function(response){
          
                       var dato=response;
                       //alert(dato);
                        loadData();
                      }
                      });
                }else
                        {
                            alert("ocurrió un error"+dato.message);
                        }
            }else{
                    alert("No se pudo obtener el codigo de muestra seleccionado.");
            }

    
    }


    function permissions(e) {
        $("#action-result").html("Action clicked: Set permissions ...");
    }
    //Regresar a la pantalla principal
    function sondaje(e) {
       var url="Sondaje"; 
       document.location.href=url;                         
    }
    //Ir entre pantallas
    function estructura(e) {
            var codigoSel = getIdGrilla(e);
             if ($.trim(codigoSel) != "") {
                       var codigoSel=$("#hidCodigoSondaje").val();
                       var url="Estructura?idSondaje="+codigoSel; 
                       //document.location.replace(url);
                       document.location.href=url;
            } else {
                alert("Seleccione un registro de Sondaje.");
            }
                                                      
    }
    function litologia(e) {

        if ($("#hidPerfil").val() == K_PERFIL_GEOLOGO) {
            var codigoSel = getIdGrilla(e);
            if ($.trim(codigoSel) != "") {
                var codigoSel=$("#hidCodigoSondaje").val();

                var url = "Litologia?idSondaje=" + codigoSel;
                //document.location.replace(url);
                document.location.href = url;
            } else {
                alert("Seleccione un registro de Sondaje.");
            }
        } else {
            alert(K_MSG_PERMISO);
        }                                  
    }
    
     function geomecanica(e) {
        if ($("#hidPerfil").val() == K_PERFIL_GEOMECANICO) {
            var codigoSel = getIdGrilla(e);
            if ($.trim(codigoSel) != "") {
                var codigoSel=$("#hidCodigoSondaje").val();
                var url = "Geomecanica?idSondaje=" + codigoSel;
                //document.location.replace(url);
                document.location.href = url;
            } else {
                alert("Seleccione un registro de Sondaje.");
            }
        } else {
            alert(K_MSG_PERMISO);
        }                                         
    }
    
    function getIdGrilla(e){
     //usar esta funcion si la primera columna es el id del agrilla
    var grid = $("#grid").data("kendoGrid");
        var row = grid.select() ;
        var uid = row.data("uid");
        var tr_first=$('[data-uid="'+uid+'"] td:first').text();
        return tr_first;
    
    }
   function closeNuevoMuestra() {
        $("#mvNuevoMuestra").kendoMobileModalView("close");
    }

   function closeEditarMuestra() {
        $("#mvEditarMuestra").kendoMobileModalView("close");
    }
   function grabarEditModalView(){
              var muestra={
                                        CodigoSondaje:$("#hidCodigoSondaje").val(),
                                        CodigoMuestraSondaje:$("#txtCodigoEdit").val(),
                                        Desde:$("#txtDesdeEdit").val(),
                                        Hasta:$("#txtHastaEdit").val(),
                                        //CodigoGeologo:$("#txtGeologoEdit").val(),
                                        CodigoTomadorMuestra:$("#ddlTomadorMuestraEdit").val(),
                                        FechaEnvio:$("#txtFechaEnvioEdit").val(),
                                        Observacion:$("#txtObservacionEdit").val(),
                                        CodigoTipoControlCalidad:$("#ddlTipoControlCalidadEdit").val(),
                                        CodigoMuestraSondajeDuplicado:$("#txtDuplicadoEdit").val()
                                    };
                            $.ajax({
                                    data:muestra,
                                    url:'Muestra1/Modificar',
                                    type:'POST',
                                    beforeSend:function(){},
                                    success:function(response){
                                            var dato= response;
                                                if(dato.result==1){
                                                            alert(dato.message);
                                                            loadData();
                                                            closeEditarMuestra();
                                                 }else{
                                                     if(dato.code==K_ERROR_CUSTOM){
                                                            alert(dato.message);
                                                     }else{
                                                            alert("Error al intentar actualizar: \n"+dato.message);
                                                     }
                                                 }
                                    }
                                });
                       
   }


   function grabarNuevoModalView(){
   var result=validacionInsert();
   if(result.flg_Exito){
        if(confirm("Esta Seguro de registrar la muestra sondaje.")){
                     var muestra={
                                        CodigoSondaje:$("#hidCodigoSondaje").val(),
                                        CodigoMuestraSondaje:$("#txtCodigo").val(),
                                        Desde:$("#txtDesde").val(),
                                        Hasta:$("#txtHasta").val(),
                                        //CodigoGeologo:$("#ddlGeologo").val(),
                                        CodigoTomadorMuestra:$("#ddlTomadorMuestra").val(),
                                        FechaEnvio:$("#txtFechaEnvio").val(),
                                        Observacion:$("#txtObservacion").val(),
                                        CodigoTipoControlCalidad:$("#ddlTipoControlCalidad").val(),
                                        CodigoMuestraSondajeDuplicado:$("#txtDuplicado").val()
                                    };
                            $.ajax({
                                    data:muestra,
                                    url:'Muestra1/Create',
                                    type:'POST',
                                    beforeSend:function(){},
                                    success:function(response){
                                            var dato= response;
                                                if(dato.result==1){
                                                            alert(dato.message);
                                                            loadData();
                                                            closeNuevoMuestra();
                                                    }else{
                                                          if(dato.code==K_ERROR_CUSTOM){
                                                            alert(dato.message);
                                                          }else{
                                                            alert("Error al intentar registrar: \n"+dato.message);
                                                           }
                                                    }
                                    }
                                });

                }
        }else{
                alert(result.msg);
        }

    }//fin de Insertar

    //funcion finalizar muestrasondaje
    function fin(e) {
                var codigoSel = $("#hidCodigoSondaje").val()
                if ($.trim(codigoSel) != "") {
                    if (confirm("Esta seguro de finalizar la muestra?")) {

                        $.ajax({
                            data: { idSondaje: codigoSel },
                            url: 'Muestra/Finalizar',
                            type: 'POST',
                            beforeSend: function () { },
                            success: function (response) {
                                var dato = response;
                                if (dato.result == 1) {
                                    alert(dato.message);
                                    loadData();
                                } else {
                                    alert(dato.message);
                                }
                            }
                        });
                    } else {
                        alert("ocurrió un error" + dato.message);
                    }
                } else {
                    alert("No se pudo obtener el codigo del sondaje seleccionado.");
                }

     }
    function validacionInsert()
	{	

		var resultado={flg_Exito:true,msg:''};
		//var geologo=$("#ddlGeologo").val();//data("KendoComboBox");
//		var tomadorMuestra=$("#ddlTomadorMuestra").data("KendoComboBox");
//		var tipoControlCalidad=$("#ddlTipoControlCalidad").data("KendoComboBox");
//        var tomadoMuestra = $("#ddlTomadorMuestra").data("kendoComboBox");
        //var desde=$("#txtDesde").val();
        //var hasta=$("#txtHasta").val();
        //alert(geologo);
		
        if($("txtDesde").val()=="" && resultado.flg_exito){
			resultado.msg="ingrese valor desde";
			$("#txtDesde").focus();
			resultado.flg_exito=false;
         }
        if($("txtHasta").val()=="" && resultado.flg_exito){
			resultado.msg="ingrese valor desde";
			$("#txtHasta").focus();
			resultado.flg_exito=false;
         }          
//		if(hasta=="" && resultado.flg_Exito){
//			resultado.msg="Ingrese Valor Hasta";
//			$("#txtHasta").focus();
//			resultado.flg_Exito=false;
//		}
//		if(tomadoMuestra.value()="" && resultado.flg_Exito){
//			resultado.msg="Seleccione Muestrero";
//			resultado.flg_Exito=false;
//		}
//		if(tipoControlCalidad.value()=="" && resultado.flg_Exito){
//			resultado.msg="Seleccione Tipo QA/QC";
//			resultado.flg_Exito=false;
//		}
//        
		//alert(resultado.flg_Exito);
	   return  resultado;
	}//Fin Validación
    

        function loadData()
        {

        var idSondaje = GetQueryStringParams('idSondaje');
        if (idSondaje != undefined) {
            $("#hidCodigoSondaje").val(idSondaje);
                $("#grid").kendoGrid({
                            dataSource:{ 
                                          type: "json",
                                          transport: { 
                                                        read: { url: "Muestra1/Listar", 
                                                                dataType: "json",
                                                                data:{idSondaje:idSondaje}
                                                               }
                                                     },
                                            schema: { type: "json",
                                                      model: {
                                                              id:"CodigoMuestraSondaje",
                                                              fields: {
                                                                        "CodigoMuestraSondaje": { type: "string" },
                                                                        "Desde": {  type: "number" },
                                                                        "Hasta": {  type: "number" },
                                                                        "DescripcionTipoControlCalidad": {  type: "text" },
                                                                        "DescripcionEstado": {  type: "text" }
                                                                    } 
                                                                }
                                                    },
                                            pageSize: 10,
                                            serverPaging: false,
                                            serverFiltering: false,
                                            serverSorting: false
                            },
                            height: 400,
                            pageable: true,
                            selectable: true,
                            resizable: true,
                            filterable: true,
                            sortable: true,
                            columnMenu: true,
                            toolbar:["Nuevo"],
                            columns: [
                                      { field: "CodigoMuestraSondaje", title: "Codigo"  },
                                    { field: "Desde" , title: "Desde" },
                                    { field: "Hasta", title:  "Hasta" },
                                    { field: "DescripcionTipoControlCalidad", title: "Tipo" },
                                    { field: "DescripcionEstado", title: "Estado" }
                                    ]
            });
         }else{
        
            $("#hidCodigoSondaje").val(0);
           alert("Error Parametro esperado no encontrado.");
         }
            

       }

function GetQueryStringParams(sParam){
     var sPageURL = window.location.search.substring(1);
     var sURLVariables = sPageURL.split('&');
    for (var i = 0; i < sURLVariables.length; i++)
     {
        var sParameterName = sURLVariables[i].split('=');
         if (sParameterName[0] == sParam)
        {
             return sParameterName[1];
         }
     }
 }

function limpiar(){
 $("#txtDesde").data("kendoNumericTextBox").value("");
 $("#txtHasta").data("kendoNumericTextBox").value("");
 
}

function obtenerSondaje() {
      var xSondaje= GetQueryStringParams('idSondaje');
     // alert(xSondaje)
      if($.trim(xSondaje)!=""){
                           
                              $.ajax({
                              data:{id:xSondaje},
                              url:'Sondaje/GetById',
                              type:'GET',
                              beforeSend:function(){},
                              success:function(response){

                              var dato=response;
                              if(dato.result==1){

                                                var sondaje=dato.data.Data;
                                                   $("#txtSondaje").val(sondaje.NombreDDH);       
                                }else{
                                        alert("ocurrió un errror"+dato.message);
                                }   
                            }
                         });

          }else{
            alert("No se pudo obtener el codigo del sondaje seleccionado.");
          }
 }

 var app = new kendo.mobile.Application(document.body);

